/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Media Upload
媒体上传相关接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>
#import <JDCloudOCSDKVod/VodApiModel.h>


@implementation VodSubmitQualityDetectionJobRequest
-(id) initWithRegion:(NSString *)regionId
mediaId:(NSString*)mediaId
templateIds:(NSArray<NSNumber*>*)templateIds { 
    self.regionId = regionId;
    self.mediaId = mediaId;
    self.templateIds = templateIds;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
mediaId:(NSString*)mediaId
templateIds:(NSArray<NSNumber*>*)templateIds { 
    self.regionId = regionId;
    self.version = version;
    self.mediaId = mediaId;
    self.templateIds = templateIds;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self mediaId])
    {
        [result setValue:[self mediaId] forKey:@"mediaId"];
    }
    if([self templateIds])
    {
        [result setValue:[self templateIds] forKey:@"templateIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.mediaId = [dictionary objectForKey:@"mediaId"];
    self.templateIds = [dictionary objectForKey:@"templateIds"];
    return self;
} 

@end
@implementation VodSetDefaultDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodListHeadersRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetHttpSslResult
-(id) initWithSource:(NSString*) source
        title:(NSString*)title
        sslCert:(NSString*)sslCert
        sslKey:(NSString*)sslKey
        jumpType:(NSString*)jumpType
        enabled:(NSNumber*)enabled { 
    self.source = source;               
    self.title = title;               
    self.sslCert = sslCert;               
    self.sslKey = sslKey;               
    self.jumpType = jumpType;               
    self.enabled = enabled;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self sslCert])
    {
        [result setValue:[self sslCert] forKey:@"sslCert"];
    }
    if([self sslKey])
    {
        [result setValue:[self sslKey] forKey:@"sslKey"];
    }
    if([self jumpType])
    {
        [result setValue:[self jumpType] forKey:@"jumpType"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.source = [dictionary objectForKey:@"source"];
    self.title = [dictionary objectForKey:@"title"];
    self.sslCert = [dictionary objectForKey:@"sslCert"];
    self.sslKey = [dictionary objectForKey:@"sslKey"];
    self.jumpType = [dictionary objectForKey:@"jumpType"];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
} 

@end
@implementation VodSetHttpSslRequest
-(id) initWithRegion:(NSString *)regionId
source:(NSString*)source
title:(NSString*)title
sslCert:(NSString*)sslCert
sslKey:(NSString*)sslKey
jumpType:(NSString*)jumpType
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.source = source;
    self.title = title;
    self.sslCert = sslCert;
    self.sslKey = sslKey;
    self.jumpType = jumpType;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
source:(NSString*)source
title:(NSString*)title
sslCert:(NSString*)sslCert
sslKey:(NSString*)sslKey
jumpType:(NSString*)jumpType
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.source = source;
    self.title = title;
    self.sslCert = sslCert;
    self.sslKey = sslKey;
    self.jumpType = jumpType;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self sslCert])
    {
        [result setValue:[self sslCert] forKey:@"sslCert"];
    }
    if([self sslKey])
    {
        [result setValue:[self sslKey] forKey:@"sslKey"];
    }
    if([self jumpType])
    {
        [result setValue:[self jumpType] forKey:@"jumpType"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.source = [dictionary objectForKey:@"source"];
    self.title = [dictionary objectForKey:@"title"];
    self.sslCert = [dictionary objectForKey:@"sslCert"];
    self.sslKey = [dictionary objectForKey:@"sslKey"];
    self.jumpType = [dictionary objectForKey:@"jumpType"];
    self.enabled = [dictionary objectForKey:@"enabled"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodDeleteHeaderRequest
-(id) initWithRegion:(NSString *)regionId
headerName:(NSString*)headerName
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.headerName = headerName;
    self.headerType = headerType;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
headerName:(NSString*)headerName
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.headerName = headerName;
    self.headerType = headerType;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self headerName])
    {
        [result setValue:[self headerName] forKey:@"headerName"];
    }
    if([self headerType])
    {
        [result setValue:[self headerType] forKey:@"headerType"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.headerName = [dictionary objectForKey:@"headerName"];
    self.headerType = [dictionary objectForKey:@"headerType"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetURLRuleRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetHttpSslRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodCreateDomainRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name { 
    self.regionId = regionId;
    self.name = name;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    return self;
} 

@end
@implementation VodDeleteDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetIPRuleRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodDisableDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetDomainResult
-(id) initWithId:(NSString*) idValue
        name:(NSString*)name
        cname:(NSString*)cname
        status:(NSString*)status
        source:(NSString*)source
        asDefault:(NSNumber*)asDefault
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.cname = cname;               
    self.status = status;               
    self.source = source;               
    self.asDefault = asDefault;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self cname])
    {
        [result setValue:[self cname] forKey:@"cname"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self asDefault])
    {
        [result setValue:[self asDefault] forKey:@"asDefault"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.cname = [dictionary objectForKey:@"cname"];
    self.status = [dictionary objectForKey:@"status"];
    self.source = [dictionary objectForKey:@"source"];
    self.asDefault = [dictionary objectForKey:@"asDefault"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodCreateDomainResult
-(id) initWithId:(NSString*) idValue
        name:(NSString*)name
        cname:(NSString*)cname
        status:(NSString*)status
        source:(NSString*)source
        asDefault:(NSNumber*)asDefault
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.cname = cname;               
    self.status = status;               
    self.source = source;               
    self.asDefault = asDefault;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self cname])
    {
        [result setValue:[self cname] forKey:@"cname"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self asDefault])
    {
        [result setValue:[self asDefault] forKey:@"asDefault"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.cname = [dictionary objectForKey:@"cname"];
    self.status = [dictionary objectForKey:@"status"];
    self.source = [dictionary objectForKey:@"source"];
    self.asDefault = [dictionary objectForKey:@"asDefault"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodSetHeaderRequest
-(id) initWithRegion:(NSString *)regionId
headerName:(NSString*)headerName
headerValue:(NSString*)headerValue
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.headerName = headerName;
    self.headerValue = headerValue;
    self.headerType = headerType;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
headerName:(NSString*)headerName
headerValue:(NSString*)headerValue
headerType:(NSString*)headerType
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.headerName = headerName;
    self.headerValue = headerValue;
    self.headerType = headerType;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self headerName])
    {
        [result setValue:[self headerName] forKey:@"headerName"];
    }
    if([self headerValue])
    {
        [result setValue:[self headerValue] forKey:@"headerValue"];
    }
    if([self headerType])
    {
        [result setValue:[self headerType] forKey:@"headerType"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.headerName = [dictionary objectForKey:@"headerName"];
    self.headerValue = [dictionary objectForKey:@"headerValue"];
    self.headerType = [dictionary objectForKey:@"headerType"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetRefererRuleRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodEnableDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetQualityDetectionTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        templateType:(NSString*)templateType
        detections:(NSArray<NSString*>*)detections
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.templateType = templateType;               
    self.detections = detections;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodCreateQualityDetectionTemplateRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
templateType:(NSString*)templateType
detections:(NSArray<NSString*>*)detections { 
    self.regionId = regionId;
    self.name = name;
    self.templateType = templateType;
    self.detections = detections;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
templateType:(NSString*)templateType
detections:(NSArray<NSString*>*)detections { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.templateType = templateType;
    self.detections = detections;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    return self;
} 

@end
@implementation VodCreateQualityDetectionTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        templateType:(NSString*)templateType
        detections:(NSArray<NSString*>*)detections
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.templateType = templateType;               
    self.detections = detections;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodUpdateQualityDetectionTemplateRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
detections:(NSArray<NSString*>*)detections
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.name = name;
    self.detections = detections;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
detections:(NSArray<NSString*>*)detections
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.detections = detections;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.detections = [dictionary objectForKey:@"detections"];
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodDeleteQualityDetectionTemplateRequest
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodGetQualityDetectionTemplateRequest
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodListQualityDetectionTemplatesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    return self;
} 

@end
@implementation VodUpdateQualityDetectionTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        templateType:(NSString*)templateType
        detections:(NSArray<NSString*>*)detections
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.templateType = templateType;               
    self.detections = detections;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodSubmitTranscodeJobRequest
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId
templateIds:(NSArray<NSNumber*>*)templateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
    self.regionId = regionId;
    self.videoId = videoId;
    self.templateIds = templateIds;
    self.watermarkIds = watermarkIds;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId
templateIds:(NSArray<NSNumber*>*)templateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
    self.regionId = regionId;
    self.version = version;
    self.videoId = videoId;
    self.templateIds = templateIds;
    self.watermarkIds = watermarkIds;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self templateIds])
    {
        [result setValue:[self templateIds] forKey:@"templateIds"];
    }
    if([self watermarkIds])
    {
        [result setValue:[self watermarkIds] forKey:@"watermarkIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.templateIds = [dictionary objectForKey:@"templateIds"];
    self.watermarkIds = [dictionary objectForKey:@"watermarkIds"];
    return self;
} 

@end
@implementation VodGetTranscodeTemplateRequest
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodDeleteTranscodeTemplateRequest
-(id) initWithRegion:(NSString *)regionId
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodUpdateCategoryResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        level:(NSNumber*)level
        parentId:(NSNumber*)parentId
        descriptionValue:(NSString*)descriptionValue
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.level = level;               
    self.parentId = parentId;               
    self.descriptionValue = descriptionValue;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodUpdateCategoryRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.name = name;
    self.parentId = parentId;
    self.descriptionValue = descriptionValue;
    self.categoryId = categoryId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.parentId = parentId;
    self.descriptionValue = descriptionValue;
    self.categoryId = categoryId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    return self;
} 

@end
@implementation VodGetCategoryRequest
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.categoryId = categoryId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.version = version;
    self.categoryId = categoryId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    return self;
} 

@end
@implementation VodCreateCategoryResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        level:(NSNumber*)level
        parentId:(NSNumber*)parentId
        descriptionValue:(NSString*)descriptionValue
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.level = level;               
    self.parentId = parentId;               
    self.descriptionValue = descriptionValue;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodGetCategoryWithChildrenRequest
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.categoryId = categoryId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.version = version;
    self.categoryId = categoryId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    return self;
} 

@end
@implementation VodCreateCategoryRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue { 
    self.regionId = regionId;
    self.name = name;
    self.parentId = parentId;
    self.descriptionValue = descriptionValue;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
parentId:(NSNumber*)parentId
descriptionValue:(NSString*)descriptionValue { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.parentId = parentId;
    self.descriptionValue = descriptionValue;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
} 

@end
@implementation VodGetCategoryResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        level:(NSNumber*)level
        parentId:(NSNumber*)parentId
        descriptionValue:(NSString*)descriptionValue
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.level = level;               
    self.parentId = parentId;               
    self.descriptionValue = descriptionValue;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodDeleteCategoryRequest
-(id) initWithRegion:(NSString *)regionId
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.categoryId = categoryId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
categoryId:(NSNumber*)categoryId { 
    self.regionId = regionId;
    self.version = version;
    self.categoryId = categoryId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    return self;
} 

@end
@implementation VodDeleteVideoStreamsRequest
-(id) initWithRegion:(NSString *)regionId
taskIds:(NSArray<NSNumber*>*)taskIds
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.taskIds = taskIds;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
taskIds:(NSArray<NSNumber*>*)taskIds
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.taskIds = taskIds;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self taskIds])
    {
        [result setValue:[self taskIds] forKey:@"taskIds"];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskIds = [dictionary objectForKey:@"taskIds"];
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodDeleteVideoRequest
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodBatchDeleteVideosResult
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds
        notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds
        failedVideoIds:(NSArray<NSString*>*)failedVideoIds { 
    self.okVideoIds = okVideoIds;               
    self.notFoundVideoIds = notFoundVideoIds;               
    self.failedVideoIds = failedVideoIds;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okVideoIds])
    {
        [result setValue:[self okVideoIds] forKey:@"okVideoIds"];
    }
    if([self notFoundVideoIds])
    {
        [result setValue:[self notFoundVideoIds] forKey:@"notFoundVideoIds"];
    }
    if([self failedVideoIds])
    {
        [result setValue:[self failedVideoIds] forKey:@"failedVideoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okVideoIds = [dictionary objectForKey:@"okVideoIds"];
    self.notFoundVideoIds = [dictionary objectForKey:@"notFoundVideoIds"];
    self.failedVideoIds = [dictionary objectForKey:@"failedVideoIds"];
    return self;
} 

@end
@implementation VodBatchDeleteVideosRequest
-(id) initWithRegion:(NSString *)regionId
videoIds:(NSArray<NSString*>*)videoIds { 
    self.regionId = regionId;
    self.videoIds = videoIds;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoIds:(NSArray<NSString*>*)videoIds { 
    self.regionId = regionId;
    self.version = version;
    self.videoIds = videoIds;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoIds])
    {
        [result setValue:[self videoIds] forKey:@"videoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoIds = [dictionary objectForKey:@"videoIds"];
    return self;
} 

@end
@implementation VodUpdateVideoRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.name = name;
    self.categoryId = categoryId;
    self.tags = tags;
    self.coverUrl = coverUrl;
    self.descriptionValue = descriptionValue;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.categoryId = categoryId;
    self.tags = tags;
    self.coverUrl = coverUrl;
    self.descriptionValue = descriptionValue;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodDeleteVideoStreamsResult
-(id) initWithOkTaskIds:(NSArray<NSNumber*>*) okTaskIds
        notFoundTaskIds:(NSArray<NSNumber*>*)notFoundTaskIds
        failedTaskIds:(NSArray<NSNumber*>*)failedTaskIds { 
    self.okTaskIds = okTaskIds;               
    self.notFoundTaskIds = notFoundTaskIds;               
    self.failedTaskIds = failedTaskIds;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okTaskIds])
    {
        [result setValue:[self okTaskIds] forKey:@"okTaskIds"];
    }
    if([self notFoundTaskIds])
    {
        [result setValue:[self notFoundTaskIds] forKey:@"notFoundTaskIds"];
    }
    if([self failedTaskIds])
    {
        [result setValue:[self failedTaskIds] forKey:@"failedTaskIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okTaskIds = [dictionary objectForKey:@"okTaskIds"];
    self.notFoundTaskIds = [dictionary objectForKey:@"notFoundTaskIds"];
    self.failedTaskIds = [dictionary objectForKey:@"failedTaskIds"];
    return self;
} 

@end
@implementation VodGetVideoRequest
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodGetVideoPlayInfoRequest
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodBatchUpdateVideosResult
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds
        notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds
        failedVideoIds:(NSArray<NSString*>*)failedVideoIds { 
    self.okVideoIds = okVideoIds;               
    self.notFoundVideoIds = notFoundVideoIds;               
    self.failedVideoIds = failedVideoIds;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okVideoIds])
    {
        [result setValue:[self okVideoIds] forKey:@"okVideoIds"];
    }
    if([self notFoundVideoIds])
    {
        [result setValue:[self notFoundVideoIds] forKey:@"notFoundVideoIds"];
    }
    if([self failedVideoIds])
    {
        [result setValue:[self failedVideoIds] forKey:@"failedVideoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okVideoIds = [dictionary objectForKey:@"okVideoIds"];
    self.notFoundVideoIds = [dictionary objectForKey:@"notFoundVideoIds"];
    self.failedVideoIds = [dictionary objectForKey:@"failedVideoIds"];
    return self;
} 

@end
@implementation VodCreateWatermarkResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        imgUrl:(NSString*)imgUrl
        width:(NSString*)width
        height:(NSString*)height
        sizeUnit:(NSString*)sizeUnit
        position:(NSString*)position
        offsetX:(NSString*)offsetX
        offsetY:(NSString*)offsetY
        offsetUnit:(NSString*)offsetUnit
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.imgUrl = imgUrl;               
    self.width = width;               
    self.height = height;               
    self.sizeUnit = sizeUnit;               
    self.position = position;               
    self.offsetX = offsetX;               
    self.offsetY = offsetY;               
    self.offsetUnit = offsetUnit;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodUpdateWatermarkResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        imgUrl:(NSString*)imgUrl
        width:(NSString*)width
        height:(NSString*)height
        sizeUnit:(NSString*)sizeUnit
        position:(NSString*)position
        offsetX:(NSString*)offsetX
        offsetY:(NSString*)offsetY
        offsetUnit:(NSString*)offsetUnit
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.imgUrl = imgUrl;               
    self.width = width;               
    self.height = height;               
    self.sizeUnit = sizeUnit;               
    self.position = position;               
    self.offsetX = offsetX;               
    self.offsetY = offsetY;               
    self.offsetUnit = offsetUnit;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodGetWatermarkResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        imgUrl:(NSString*)imgUrl
        width:(NSString*)width
        height:(NSString*)height
        sizeUnit:(NSString*)sizeUnit
        position:(NSString*)position
        offsetX:(NSString*)offsetX
        offsetY:(NSString*)offsetY
        offsetUnit:(NSString*)offsetUnit
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.imgUrl = imgUrl;               
    self.width = width;               
    self.height = height;               
    self.sizeUnit = sizeUnit;               
    self.position = position;               
    self.offsetX = offsetX;               
    self.offsetY = offsetY;               
    self.offsetUnit = offsetUnit;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodGetWatermarkRequest
-(id) initWithRegion:(NSString *)regionId
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.watermarkId = watermarkId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.version = version;
    self.watermarkId = watermarkId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self watermarkId])
    {
        [result setValue:[self watermarkId] forKey:@"watermarkId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.watermarkId = [dictionary objectForKey:@"watermarkId"];
    return self;
} 

@end
@implementation VodListWatermarksRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    return self;
} 

@end
@implementation VodUpdateWatermarkRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.name = name;
    self.imgUrl = imgUrl;
    self.width = width;
    self.height = height;
    self.sizeUnit = sizeUnit;
    self.position = position;
    self.offsetX = offsetX;
    self.offsetY = offsetY;
    self.offsetUnit = offsetUnit;
    self.watermarkId = watermarkId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.imgUrl = imgUrl;
    self.width = width;
    self.height = height;
    self.sizeUnit = sizeUnit;
    self.position = position;
    self.offsetX = offsetX;
    self.offsetY = offsetY;
    self.offsetUnit = offsetUnit;
    self.watermarkId = watermarkId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    if([self watermarkId])
    {
        [result setValue:[self watermarkId] forKey:@"watermarkId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    self.watermarkId = [dictionary objectForKey:@"watermarkId"];
    return self;
} 

@end
@implementation VodDeleteWatermarkRequest
-(id) initWithRegion:(NSString *)regionId
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.watermarkId = watermarkId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
watermarkId:(NSNumber*)watermarkId { 
    self.regionId = regionId;
    self.version = version;
    self.watermarkId = watermarkId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self watermarkId])
    {
        [result setValue:[self watermarkId] forKey:@"watermarkId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.watermarkId = [dictionary objectForKey:@"watermarkId"];
    return self;
} 

@end
@implementation VodCreateWatermarkRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit { 
    self.regionId = regionId;
    self.name = name;
    self.imgUrl = imgUrl;
    self.width = width;
    self.height = height;
    self.sizeUnit = sizeUnit;
    self.position = position;
    self.offsetX = offsetX;
    self.offsetY = offsetY;
    self.offsetUnit = offsetUnit;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
imgUrl:(NSString*)imgUrl
width:(NSString*)width
height:(NSString*)height
sizeUnit:(NSString*)sizeUnit
position:(NSString*)position
offsetX:(NSString*)offsetX
offsetY:(NSString*)offsetY
offsetUnit:(NSString*)offsetUnit { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.imgUrl = imgUrl;
    self.width = width;
    self.height = height;
    self.sizeUnit = sizeUnit;
    self.position = position;
    self.offsetX = offsetX;
    self.offsetY = offsetY;
    self.offsetUnit = offsetUnit;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    return self;
} 

@end
@implementation VodCreateImageUploadTaskRequest
-(id) initWithRegion:(NSString *)regionId
httpMethod:(NSString*)httpMethod
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize { 
    self.regionId = regionId;
    self.httpMethod = httpMethod;
    self.fileName = fileName;
    self.fileSize = fileSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
httpMethod:(NSString*)httpMethod
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize { 
    self.regionId = regionId;
    self.version = version;
    self.httpMethod = httpMethod;
    self.fileName = fileName;
    self.fileSize = fileSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self httpMethod])
    {
        [result setValue:[self httpMethod] forKey:@"httpMethod"];
    }
    if([self fileName])
    {
        [result setValue:[self fileName] forKey:@"fileName"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.httpMethod = [dictionary objectForKey:@"httpMethod"];
    self.fileName = [dictionary objectForKey:@"fileName"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    return self;
} 

@end
@implementation VodRefreshVideoUploadTaskResult
-(id) initWithVideoId:(NSString*) videoId
        uploadUrl:(NSString*)uploadUrl { 
    self.videoId = videoId;               
    self.uploadUrl = uploadUrl;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self uploadUrl])
    {
        [result setValue:[self uploadUrl] forKey:@"uploadUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.uploadUrl = [dictionary objectForKey:@"uploadUrl"];
    return self;
} 

@end
@implementation VodCreateImageUploadTaskResult
-(id) initWithImageId:(NSString*) imageId
        uploadUrl:(NSString*)uploadUrl { 
    self.imageId = imageId;               
    self.uploadUrl = uploadUrl;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self imageId])
    {
        [result setValue:[self imageId] forKey:@"imageId"];
    }
    if([self uploadUrl])
    {
        [result setValue:[self uploadUrl] forKey:@"uploadUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.imageId = [dictionary objectForKey:@"imageId"];
    self.uploadUrl = [dictionary objectForKey:@"uploadUrl"];
    return self;
} 

@end
@implementation VodRefreshVideoUploadTaskRequest
-(id) initWithRegion:(NSString *)regionId
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.videoId = videoId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
videoId:(NSString*)videoId { 
    self.regionId = regionId;
    self.version = version;
    self.videoId = videoId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    return self;
} 

@end
@implementation VodCreateVideoUploadTaskResult
-(id) initWithVideoId:(NSString*) videoId
        uploadUrl:(NSString*)uploadUrl { 
    self.videoId = videoId;               
    self.uploadUrl = uploadUrl;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self uploadUrl])
    {
        [result setValue:[self uploadUrl] forKey:@"uploadUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.uploadUrl = [dictionary objectForKey:@"uploadUrl"];
    return self;
} 

@end
@implementation VodCreateVideoUploadTaskRequest
-(id) initWithRegion:(NSString *)regionId
httpMethod:(NSString*)httpMethod
title:(NSString*)title
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
transcodeTemplateIds:(NSArray<NSNumber*>*)transcodeTemplateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
    self.regionId = regionId;
    self.httpMethod = httpMethod;
    self.title = title;
    self.fileName = fileName;
    self.fileSize = fileSize;
    self.coverUrl = coverUrl;
    self.descriptionValue = descriptionValue;
    self.categoryId = categoryId;
    self.tags = tags;
    self.transcodeTemplateIds = transcodeTemplateIds;
    self.watermarkIds = watermarkIds;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
httpMethod:(NSString*)httpMethod
title:(NSString*)title
fileName:(NSString*)fileName
fileSize:(NSNumber*)fileSize
coverUrl:(NSString*)coverUrl
descriptionValue:(NSString*)descriptionValue
categoryId:(NSNumber*)categoryId
tags:(NSArray<NSString*>*)tags
transcodeTemplateIds:(NSArray<NSNumber*>*)transcodeTemplateIds
watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
    self.regionId = regionId;
    self.version = version;
    self.httpMethod = httpMethod;
    self.title = title;
    self.fileName = fileName;
    self.fileSize = fileSize;
    self.coverUrl = coverUrl;
    self.descriptionValue = descriptionValue;
    self.categoryId = categoryId;
    self.tags = tags;
    self.transcodeTemplateIds = transcodeTemplateIds;
    self.watermarkIds = watermarkIds;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self httpMethod])
    {
        [result setValue:[self httpMethod] forKey:@"httpMethod"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self fileName])
    {
        [result setValue:[self fileName] forKey:@"fileName"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self transcodeTemplateIds])
    {
        [result setValue:[self transcodeTemplateIds] forKey:@"transcodeTemplateIds"];
    }
    if([self watermarkIds])
    {
        [result setValue:[self watermarkIds] forKey:@"watermarkIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.httpMethod = [dictionary objectForKey:@"httpMethod"];
    self.title = [dictionary objectForKey:@"title"];
    self.fileName = [dictionary objectForKey:@"fileName"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.transcodeTemplateIds = [dictionary objectForKey:@"transcodeTemplateIds"];
    self.watermarkIds = [dictionary objectForKey:@"watermarkIds"];
    return self;
} 

@end
@implementation VodBatchSubmitQualityDetectionJobsResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodBatchSubmitQualityDetectionJobsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodBatchSubmitQualityDetectionJobsResult* result = [[VodBatchSubmitQualityDetectionJobsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodBatchSubmitQualityDetectionJobsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodBatchSubmitQualityDetectionJobsRequest
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<SubmitQualityDetectionJobRequestObject*>*)bulkItems { 
    self.regionId = regionId;
    self.bulkItems = bulkItems;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<SubmitQualityDetectionJobRequestObject*>*)bulkItems { 
    self.regionId = regionId;
    self.version = version;
    self.bulkItems = bulkItems;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self bulkItems])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bulkItems] count]; i++) {
            SubmitQualityDetectionJobRequestObject* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
        SubmitQualityDetectionJobRequestObject* item = [[SubmitQualityDetectionJobRequestObject alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
} 

@end
@implementation VodSubmitQualityDetectionJobResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSubmitQualityDetectionJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSubmitQualityDetectionJobResult* result = [[VodSubmitQualityDetectionJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSubmitQualityDetectionJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetURLRuleRequest
-(id) initWithRegion:(NSString *)regionId
config:(URLRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(URLRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[URLRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodGetIPRuleResult
-(id) initWithRuleType:(NSString*) ruleType
        config:(IPRuleConfigObject*)config
        enabled:(NSNumber*)enabled { 
    self.ruleType = ruleType;               
    self.config = config;               
    self.enabled = enabled;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[IPRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
} 

@end
@implementation VodDisableDomainResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation VodGetRefererRuleResult
-(id) initWithRuleType:(NSString*) ruleType
        config:(RefererRuleConfigObject*)config
        enabled:(NSNumber*)enabled { 
    self.ruleType = ruleType;               
    self.config = config;               
    self.enabled = enabled;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[RefererRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
} 

@end
@implementation VodSetDefaultDomainResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSetDefaultDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetDefaultDomainResult* result = [[VodSetDefaultDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetDefaultDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListHeadersResult
-(id) initWithHeaders:(NSArray<GetHeaderResultObject*>*) headers { 
    self.headers = headers;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self headers])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self headers] count]; i++) {
            GetHeaderResultObject* item = [[self headers] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"headers"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* headersArray = [dictionary objectForKey:@"headers"];
    if(headersArray&&![headersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [headersArray count];i++)
        {
        GetHeaderResultObject* item = [[GetHeaderResultObject alloc]initWithDic:[headersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.headers = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodListHeadersResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListHeadersResult* result = [[VodListHeadersResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListHeadersResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetRefererRuleRequest
-(id) initWithRegion:(NSString *)regionId
config:(RefererRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(RefererRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[RefererRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation VodListDomainsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.sorts = sorts;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.sorts = sorts;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self sorts])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self sorts] count]; i++) {
            VodSort* item = [[self sorts] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"sorts"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* sortsArray = [dictionary objectForKey:@"sorts"];
    if(sortsArray&&![sortsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [sortsArray count];i++)
        {
        VodSort* item = [[VodSort alloc]initWithDic:[sortsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.sorts = propertyArray;
    }
    return self;
} 

@end
@implementation VodSetURLRuleResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSetURLRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetURLRuleResult* result = [[VodSetURLRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetURLRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateDomainResult* result = [[VodCreateDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetRefererRuleResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSetRefererRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetRefererRuleResult* result = [[VodSetRefererRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetRefererRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodDeleteHeaderResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation VodListDomainsResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<DomainObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            DomainObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        DomainObject* item = [[DomainObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
@implementation VodSetIPRuleResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSetIPRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetIPRuleResult* result = [[VodSetIPRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetIPRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodEnableDomainResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation VodGetURLRuleResult
-(id) initWithRuleType:(NSString*) ruleType
        config:(URLRuleConfigObject*)config
        enabled:(NSNumber*)enabled { 
    self.ruleType = ruleType;               
    self.config = config;               
    self.enabled = enabled;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[URLRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
} 

@end
@implementation VodDeleteDomainResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodDeleteDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteDomainResult* result = [[VodDeleteDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodEnableDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodEnableDomainResult* result = [[VodEnableDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodEnableDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDisableDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDisableDomainResult* result = [[VodDisableDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDisableDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetHttpSslResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodSetHttpSslResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetHttpSslResult* result = [[VodSetHttpSslResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetHttpSslResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetDomainResult* result = [[VodGetDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDeleteHeaderResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteHeaderResult* result = [[VodDeleteHeaderResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteHeaderResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetURLRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetURLRuleResult* result = [[VodGetURLRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetURLRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetHttpSslResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetHttpSslResult* result = [[VodGetHttpSslResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetHttpSslResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetIPRuleRequest
-(id) initWithRegion:(NSString *)regionId
config:(IPRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
config:(IPRuleConfigObject*)config
enabled:(NSNumber*)enabled
domainId:(NSNumber*)domainId { 
    self.regionId = regionId;
    self.version = version;
    self.config = config;
    self.enabled = enabled;
    self.domainId = domainId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[IPRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
  
@implementation VodListDomainsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListDomainsResult* result = [[VodListDomainsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListDomainsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSetHeaderResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodGetRefererRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetRefererRuleResult* result = [[VodGetRefererRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetRefererRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodSetHeaderResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSetHeaderResult* result = [[VodSetHeaderResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSetHeaderResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetIPRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetIPRuleResult* result = [[VodGetIPRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetIPRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListQualityDetectionTemplatesResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<QualityDetectionTemplateObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            QualityDetectionTemplateObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        QualityDetectionTemplateObject* item = [[QualityDetectionTemplateObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodListQualityDetectionTemplatesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListQualityDetectionTemplatesResult* result = [[VodListQualityDetectionTemplatesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListQualityDetectionTemplatesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodDeleteQualityDetectionTemplateResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodGetQualityDetectionTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetQualityDetectionTemplateResult* result = [[VodGetQualityDetectionTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetQualityDetectionTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDeleteQualityDetectionTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteQualityDetectionTemplateResult* result = [[VodDeleteQualityDetectionTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteQualityDetectionTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodUpdateQualityDetectionTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodUpdateQualityDetectionTemplateResult* result = [[VodUpdateQualityDetectionTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodUpdateQualityDetectionTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateQualityDetectionTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateQualityDetectionTemplateResult* result = [[VodCreateQualityDetectionTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateQualityDetectionTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodBatchSubmitTranscodeJobsResult
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks { 
    self.tasks = tasks;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self tasks])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self tasks] count]; i++) {
            SubmittedTranscodeTask* item = [[self tasks] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"tasks"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* tasksArray = [dictionary objectForKey:@"tasks"];
    if(tasksArray&&![tasksArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [tasksArray count];i++)
        {
        SubmittedTranscodeTask* item = [[SubmittedTranscodeTask alloc]initWithDic:[tasksArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.tasks = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodBatchSubmitTranscodeJobsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodBatchSubmitTranscodeJobsResult* result = [[VodBatchSubmitTranscodeJobsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodBatchSubmitTranscodeJobsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodSubmitTranscodeJobResult
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks { 
    self.tasks = tasks;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self tasks])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self tasks] count]; i++) {
            SubmittedTranscodeTask* item = [[self tasks] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"tasks"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* tasksArray = [dictionary objectForKey:@"tasks"];
    if(tasksArray&&![tasksArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [tasksArray count];i++)
        {
        SubmittedTranscodeTask* item = [[SubmittedTranscodeTask alloc]initWithDic:[tasksArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.tasks = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodSubmitTranscodeJobResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodSubmitTranscodeJobResult* result = [[VodSubmitTranscodeJobResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodSubmitTranscodeJobResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodBatchSubmitTranscodeJobsRequest
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<SubmitTranscodeJobRequestObject*>*)bulkItems { 
    self.regionId = regionId;
    self.bulkItems = bulkItems;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<SubmitTranscodeJobRequestObject*>*)bulkItems { 
    self.regionId = regionId;
    self.version = version;
    self.bulkItems = bulkItems;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self bulkItems])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bulkItems] count]; i++) {
            SubmitTranscodeJobRequestObject* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
        SubmitTranscodeJobRequestObject* item = [[SubmitTranscodeJobRequestObject alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
} 

@end
@implementation VodCreateTranscodeTemplateRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType { 
    self.regionId = regionId;
    self.name = name;
    self.video = video;
    self.audio = audio;
    self.encapsulation = encapsulation;
    self.definition = definition;
    self.templateType = templateType;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.video = video;
    self.audio = audio;
    self.encapsulation = encapsulation;
    self.definition = definition;
    self.templateType = templateType;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    return self;
} 

@end
@implementation VodUpdateTranscodeTemplateRequest
-(id) initWithRegion:(NSString *)regionId
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.name = name;
    self.video = video;
    self.audio = audio;
    self.encapsulation = encapsulation;
    self.definition = definition;
    self.templateType = templateType;
    self.templateId = templateId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
name:(NSString*)name
video:(Video*)video
audio:(Audio*)audio
encapsulation:(Encapsulation*)encapsulation
definition:(NSString*)definition
templateType:(NSString*)templateType
templateId:(NSNumber*)templateId { 
    self.regionId = regionId;
    self.version = version;
    self.name = name;
    self.video = video;
    self.audio = audio;
    self.encapsulation = encapsulation;
    self.definition = definition;
    self.templateType = templateType;
    self.templateId = templateId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.templateId = [dictionary objectForKey:@"templateId"];
    return self;
} 

@end
@implementation VodCreateTranscodeTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        video:(Video*)video
        audio:(Audio*)audio
        encapsulation:(Encapsulation*)encapsulation
        definition:(NSString*)definition
        source:(NSString*)source
        templateType:(NSString*)templateType
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.video = video;               
    self.audio = audio;               
    self.encapsulation = encapsulation;               
    self.definition = definition;               
    self.source = source;               
    self.templateType = templateType;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.source = [dictionary objectForKey:@"source"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
  
@implementation VodCreateTranscodeTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateTranscodeTemplateResult* result = [[VodCreateTranscodeTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateTranscodeTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodUpdateTranscodeTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        video:(Video*)video
        audio:(Audio*)audio
        encapsulation:(Encapsulation*)encapsulation
        definition:(NSString*)definition
        source:(NSString*)source
        templateType:(NSString*)templateType
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.video = video;               
    self.audio = audio;               
    self.encapsulation = encapsulation;               
    self.definition = definition;               
    self.source = source;               
    self.templateType = templateType;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.source = [dictionary objectForKey:@"source"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodDeleteTranscodeTemplateResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodDeleteTranscodeTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteTranscodeTemplateResult* result = [[VodDeleteTranscodeTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteTranscodeTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodUpdateTranscodeTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodUpdateTranscodeTemplateResult* result = [[VodUpdateTranscodeTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodUpdateTranscodeTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListTranscodeTemplatesResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<TranscodeTemplateObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            TranscodeTemplateObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        TranscodeTemplateObject* item = [[TranscodeTemplateObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
@implementation VodListTranscodeTemplatesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            VodFilter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        VodFilter* item = [[VodFilter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodListTranscodeTemplatesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListTranscodeTemplatesResult* result = [[VodListTranscodeTemplatesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListTranscodeTemplatesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodGetTranscodeTemplateResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        video:(Video*)video
        audio:(Audio*)audio
        encapsulation:(Encapsulation*)encapsulation
        definition:(NSString*)definition
        source:(NSString*)source
        templateType:(NSString*)templateType
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.video = video;               
    self.audio = audio;               
    self.encapsulation = encapsulation;               
    self.definition = definition;               
    self.source = source;               
    self.templateType = templateType;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.source = [dictionary objectForKey:@"source"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
  
@implementation VodGetTranscodeTemplateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetTranscodeTemplateResult* result = [[VodGetTranscodeTemplateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetTranscodeTemplateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodGetCategoryWithChildrenResult
-(id) initWithId:(NSNumber*) idValue
        name:(NSString*)name
        level:(NSNumber*)level
        descriptionValue:(NSString*)descriptionValue
        children:(NSArray<SubCategory*>*)children
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.level = level;               
    self.descriptionValue = descriptionValue;               
    self.children = children;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self children])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self children] count]; i++) {
            SubCategory* item = [[self children] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"children"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    NSArray* childrenArray = [dictionary objectForKey:@"children"];
    if(childrenArray&&![childrenArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [childrenArray count];i++)
        {
        SubCategory* item = [[SubCategory alloc]initWithDic:[childrenArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.children = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodDeleteCategoryResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation VodListCategoriesResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<CategoryObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            CategoryObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        CategoryObject* item = [[CategoryObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodListCategoriesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListCategoriesResult* result = [[VodListCategoriesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListCategoriesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListCategoriesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.sorts = sorts;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.sorts = sorts;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self sorts])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self sorts] count]; i++) {
            VodSort* item = [[self sorts] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"sorts"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* sortsArray = [dictionary objectForKey:@"sorts"];
    if(sortsArray&&![sortsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [sortsArray count];i++)
        {
        VodSort* item = [[VodSort alloc]initWithDic:[sortsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.sorts = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodUpdateCategoryResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodUpdateCategoryResult* result = [[VodUpdateCategoryResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodUpdateCategoryResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetCategoryWithChildrenResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetCategoryWithChildrenResult* result = [[VodGetCategoryWithChildrenResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetCategoryWithChildrenResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodGetCategoryResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetCategoryResult* result = [[VodGetCategoryResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetCategoryResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDeleteCategoryResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteCategoryResult* result = [[VodDeleteCategoryResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteCategoryResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateCategoryResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateCategoryResult* result = [[VodCreateCategoryResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateCategoryResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodGetVideoResult
-(id) initWithId:(NSString*) idValue
        name:(NSString*)name
        descriptionValue:(NSString*)descriptionValue
        coverUrl:(NSString*)coverUrl
        status:(NSString*)status
        fileSize:(NSNumber*)fileSize
        checksum:(NSString*)checksum
        duration:(NSNumber*)duration
        tags:(NSArray<NSString*>*)tags
        categoryId:(NSNumber*)categoryId
        categoryName:(NSString*)categoryName
        snapshots:(NSArray<Snapshot*>*)snapshots
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.descriptionValue = descriptionValue;               
    self.coverUrl = coverUrl;               
    self.status = status;               
    self.fileSize = fileSize;               
    self.checksum = checksum;               
    self.duration = duration;               
    self.tags = tags;               
    self.categoryId = categoryId;               
    self.categoryName = categoryName;               
    self.snapshots = snapshots;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    if([self checksum])
    {
        [result setValue:[self checksum] forKey:@"checksum"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self categoryName])
    {
        [result setValue:[self categoryName] forKey:@"categoryName"];
    }
    if([self snapshots])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self snapshots] count]; i++) {
            Snapshot* item = [[self snapshots] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"snapshots"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.status = [dictionary objectForKey:@"status"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    self.checksum = [dictionary objectForKey:@"checksum"];
    self.duration = [dictionary objectForKey:@"duration"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.categoryName = [dictionary objectForKey:@"categoryName"];
    NSArray* snapshotsArray = [dictionary objectForKey:@"snapshots"];
    if(snapshotsArray&&![snapshotsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [snapshotsArray count];i++)
        {
        Snapshot* item = [[Snapshot alloc]initWithDic:[snapshotsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.snapshots = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
@implementation VodListVideosResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<VideoObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            VideoObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        VideoObject* item = [[VideoObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodListVideosResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListVideosResult* result = [[VodListVideosResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListVideosResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodDeleteVideoResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodGetVideoResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetVideoResult* result = [[VodGetVideoResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetVideoResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodBatchUpdateVideosRequest
-(id) initWithRegion:(NSString *)regionId
bulkItems:(NSArray<BatchUpdateVideosBulkItem*>*)bulkItems { 
    self.regionId = regionId;
    self.bulkItems = bulkItems;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
bulkItems:(NSArray<BatchUpdateVideosBulkItem*>*)bulkItems { 
    self.regionId = regionId;
    self.version = version;
    self.bulkItems = bulkItems;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self bulkItems])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bulkItems] count]; i++) {
            BatchUpdateVideosBulkItem* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
        BatchUpdateVideosBulkItem* item = [[BatchUpdateVideosBulkItem alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodDeleteVideoResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteVideoResult* result = [[VodDeleteVideoResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteVideoResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodGetVideoPlayInfoResult
-(id) initWithBaseInfo:(VideoBaseInfo*) baseInfo
        playInfoList:(NSArray<VideoPlayInfo*>*)playInfoList { 
    self.baseInfo = baseInfo;               
    self.playInfoList = playInfoList;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self baseInfo])
    {
        [result setValue:[[self baseInfo] dictionary]forKey:@"baseInfo"];
    }
    if([self playInfoList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self playInfoList] count]; i++) {
            VideoPlayInfo* item = [[self playInfoList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"playInfoList"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.baseInfo = [[VideoBaseInfo alloc]initWithDic:[dictionary objectForKey:@"baseInfo"]];
    NSArray* playInfoListArray = [dictionary objectForKey:@"playInfoList"];
    if(playInfoListArray&&![playInfoListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [playInfoListArray count];i++)
        {
        VideoPlayInfo* item = [[VideoPlayInfo alloc]initWithDic:[playInfoListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.playInfoList = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodGetVideoPlayInfoResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetVideoPlayInfoResult* result = [[VodGetVideoPlayInfoResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetVideoPlayInfoResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodUpdateVideoResult
-(id) initWithId:(NSString*) idValue
        name:(NSString*)name
        descriptionValue:(NSString*)descriptionValue
        coverUrl:(NSString*)coverUrl
        status:(NSString*)status
        fileSize:(NSNumber*)fileSize
        checksum:(NSString*)checksum
        duration:(NSNumber*)duration
        tags:(NSArray<NSString*>*)tags
        categoryId:(NSNumber*)categoryId
        categoryName:(NSString*)categoryName
        snapshots:(NSArray<Snapshot*>*)snapshots
        createTime:(NSString*)createTime
        updateTime:(NSString*)updateTime { 
    self.idValue = idValue;               
    self.name = name;               
    self.descriptionValue = descriptionValue;               
    self.coverUrl = coverUrl;               
    self.status = status;               
    self.fileSize = fileSize;               
    self.checksum = checksum;               
    self.duration = duration;               
    self.tags = tags;               
    self.categoryId = categoryId;               
    self.categoryName = categoryName;               
    self.snapshots = snapshots;               
    self.createTime = createTime;               
    self.updateTime = updateTime;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    if([self checksum])
    {
        [result setValue:[self checksum] forKey:@"checksum"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self categoryName])
    {
        [result setValue:[self categoryName] forKey:@"categoryName"];
    }
    if([self snapshots])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self snapshots] count]; i++) {
            Snapshot* item = [[self snapshots] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"snapshots"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.status = [dictionary objectForKey:@"status"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    self.checksum = [dictionary objectForKey:@"checksum"];
    self.duration = [dictionary objectForKey:@"duration"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.categoryName = [dictionary objectForKey:@"categoryName"];
    NSArray* snapshotsArray = [dictionary objectForKey:@"snapshots"];
    if(snapshotsArray&&![snapshotsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [snapshotsArray count];i++)
        {
        Snapshot* item = [[Snapshot alloc]initWithDic:[snapshotsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.snapshots = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
} 

@end
  
@implementation VodUpdateVideoResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodUpdateVideoResult* result = [[VodUpdateVideoResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodUpdateVideoResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodBatchDeleteVideosResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodBatchDeleteVideosResult* result = [[VodBatchDeleteVideosResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodBatchDeleteVideosResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDeleteVideoStreamsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteVideoStreamsResult* result = [[VodDeleteVideoStreamsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteVideoStreamsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListVideosRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.sorts = sorts;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<VodFilter*>*)filters
sorts:(NSArray<VodSort*>*)sorts { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.sorts = sorts;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            VodFilter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self sorts])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self sorts] count]; i++) {
            VodSort* item = [[self sorts] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"sorts"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        VodFilter* item = [[VodFilter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    NSArray* sortsArray = [dictionary objectForKey:@"sorts"];
    if(sortsArray&&![sortsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [sortsArray count];i++)
        {
        VodSort* item = [[VodSort alloc]initWithDic:[sortsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.sorts = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodBatchUpdateVideosResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodBatchUpdateVideosResult* result = [[VodBatchUpdateVideosResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodBatchUpdateVideosResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodDeleteWatermarkResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation VodGetWatermarkResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodGetWatermarkResult* result = [[VodGetWatermarkResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodGetWatermarkResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodDeleteWatermarkResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodDeleteWatermarkResult* result = [[VodDeleteWatermarkResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodDeleteWatermarkResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation VodListWatermarksResult
-(id) initWithPageNumber:(NSNumber*) pageNumber
        pageSize:(NSNumber*)pageSize
        totalElements:(NSNumber*)totalElements
        totalPages:(NSNumber*)totalPages
        content:(NSArray<WatermarkObject*>*)content { 
    self.pageNumber = pageNumber;               
    self.pageSize = pageSize;               
    self.totalElements = totalElements;               
    self.totalPages = totalPages;               
    self.content = content;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self content] count]; i++) {
            WatermarkObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
        WatermarkObject* item = [[WatermarkObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
} 

@end
  
@implementation VodUpdateWatermarkResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodUpdateWatermarkResult* result = [[VodUpdateWatermarkResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodUpdateWatermarkResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateWatermarkResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateWatermarkResult* result = [[VodCreateWatermarkResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateWatermarkResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodListWatermarksResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodListWatermarksResult* result = [[VodListWatermarksResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodListWatermarksResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateImageUploadTaskResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateImageUploadTaskResult* result = [[VodCreateImageUploadTaskResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateImageUploadTaskResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodRefreshVideoUploadTaskResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodRefreshVideoUploadTaskResult* result = [[VodRefreshVideoUploadTaskResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodRefreshVideoUploadTaskResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation VodCreateVideoUploadTaskResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
VodCreateVideoUploadTaskResult* result = [[VodCreateVideoUploadTaskResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(VodCreateVideoUploadTaskResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
 
